Skip to content

概览

aos 使用了与众不同的方式构建进程与合约,ao 计算机是一个去中心的计算机网络,可以在任何地方进行计算,aos 是一个统一的交互终端。 你可以使用 aos 作为你的个人操作系统、构建 ao 进程的开发环境、以及创建您的机器人军团。

让我们来回顾一些基本指令。

变量

如果你想通过控制台显示变量的内容,可以直接输入变量的名称

lua
Name

收件箱 (Inbox)

收件箱 (Inbox) 是你进程收到的消息集合。

lua
Inbox[1]

如果您想查看消息个数,在 Inbox 前面加入 # 符号

lua
#Inbox

查看收件箱的消息个数是个非常常见的功能,为了更简单,您可以创建一个函数,返回收件箱的消息个数并显示出来。

使用 .editor 或者 .load file 来将这个函数加载到您的进程。

lua
function Prompt()
  return "Inbox: " .. #Inbox .. " > "
end

预期的结果:

sh
undefined
Inbox: 2 >

您的 Prompt 函数已经可以显示收件箱中的消息数量。

全局定义

aos 中定义了一些全局变量、函数可以让开发变得更加直观。

名称描述类型
Inbox这是一个 lua 表,存储所有接收到的消息Table(Array)
Send(Message)这是交互环境中使用的全局函数,可以向其他进程发送消息function
Spawn(Module, Message)这是 aos 中的全局函数,可以创建一个进程
Name初始化您的进程名称string
Owner这个字符串标识了进程的所有者,如果修改这个字段,可能会影响您与进程交互的能力string
Handlers一个 lua 表,可以让您创建消息的处理函数table
Dump接受 lua 中的表(Table)类型,并打印用户友好的数据内容function
Utils一个功能实用库,具有map、reduce、filter等功能module
ao这是用于发送消息和生成进程的核心函数库module

模块

在aos中,有一些内置的 lua 模块可以使用,这些模块可以通过“require”函数引用。

名称描述
jsonjson 数据的编码和解码
aoao 核心函数库,包括 send 、 spawn
.base64base64 数据的编解码
.pretty格式化输出数据,使用 tprint 函数格式化数据
.utils一个实用工具库